Maintaining visibility and status indication of docked applications and application bars

ABSTRACT

A method and system is presented which enables the user to maintain the receipt of information from an application bar while the application bar is minimized. In addition, the conveyance of information and availability of controls to the user is maintained while the user moves the window which the application bar is docked to off or around the presentation space.

This is a continuation of Ser. No. 09/040,732 filed Mar. 18, 1998, nowU.S. Pat. No. 6,108,003.

FIELD OF THE INVENTION

The present invention relates generally to docked applications andapplication toolbars. More specifically, it relates to continuouslymaintaining visibility of and accessability to docked applications,including conveying information to a user while docked applications arepresented as a minimal pixel representation.

BACKGROUND OF THE INVENTION

The present increases in processing capability and decreases in the costof personal computers has led to the proliferation of personal computersin all aspects of society. Personal computers are utilized in schools,homes and business. Furthermore, with the decreased of personalcomputers, it has become more feasible from a cost perspective to usecomputers for tasks and functions which were previously done without theuse of computers.

With the proliferation of computers throughout numerous aspects of life,a tendency towards graphical user interfaces has evolved which makes theuse of the computer more intuitive and therefore requires less expertiseof the users. Examples of such graphical user interfaces include IBM®OS/2®, Apple® System 7®, and Microsoft® Windows®. These operatingsystems all rely on a “window-like” work space for applications,operating system information such as directory information, and programgroupings.

As users become more comfortable with many benefits of a computer theyare using additional functions and features of the computer. Since mostapplications are now associated with their own window or windows andthere are more applications that people are using concurrently, thedesktops are becoming extremely cluttered. When the application toolbars (or appbars) and the windows they are docked to (i.e. attachedalong a common edge) are also taken into account, the confusion of thedesktop becomes even more apparent. This is very obvious in a mobileenvironment where a typical user may have a host emulator session, ane-mail application, multiple browser sessions, an application such as aword processor and still needs to monitor his signal strength andbattery strength. In an effort to organize their desktops, many peopleare moving parts of windows off to the sides so that much of thesewindows is outside of the view of the user. This allows the user to beaware of the window and the application that is running in it withoutthe application consuming a considerable amount of screen space, butthis methodology also causes a problem in that important information maybe scrolled or positioned outside of the user's view. Many users alsochoose to move their appbars out of view by putting them into a modecalled hide mode. This causes the appbar to be readily accessible byindicating or activating it using the cursor, which makes it unhidden(i.e., fully visible), but only displays an edge of the appbar, referredto hereinafter as a ‘visible strip’. The preferred embodiment implementsthis visible strip as a two-pixel strip although any indication of orsubset of the appbar could be used. A mode called auto-hide mode alsoallows the appbar to automatically enlarge itself when the cursor ispositioned over the visible strip.

The problem of appbar or status bar hiding becomes more intense asappbars, docked to applications, get moved off the edge of the screenand out of the view of the use.

OBJECTS OF THE INVENTION

It is an object of the present invention to notify a user in a windowedcomputer environment of changes in the status or state of applications.

If is a further object of the present invention to inhibit the user frominadvertently making important status information nonobvious or notreadily accessible.

It is yet another object of the present invention to minimize the use ofscreen space while conveying information to the user in a windowedenvironment.

SUMMARY OF THE INVENTION

The present invention presents unique methods of allowing a user in awindowed environment to be made aware of changes to applications by wayof the appbar while still enabling the user to place the appbar in hidemode or move the application window to which the appbar is dockedpartially off the presentation space. This is done by symbolicallycoding the minimal pixel representation of the hidden appbar and/orprohibiting the appbar from being located outside the viewablepresentation space. The present invention will be described in furtherdetail with respect to the figures.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1a is a block representation of a computer in which the presentinvention may be embodied.

FIG. 1b shows a typical display presentation space.

FIG. 1c represents a typical display device and keyboard.

FIG. 2 is an example of a typical appbar docked to an edge of anapplication window.

FIG. 3a is an example of a typical docked appbar in hide mode.

FIG. 3b is a close-up view of an appbar in hide mode.

FIG. 4a depicts the movement of the appbar to the adjacent edge when theuser attempts to position the appbar off the screen.

FIG. 4b depicts the appbar remaining in place as the window to which itis attached is positioned beneath it and off the screen.

FIGS. 5a & 5 b depict a progress indicator in the visible edge of ahidden appbar.

FIG. 6a depicts the automatic displaying of a hidden appbar when athreshold is reached or a status changes.

FIG. 6b depict an appbar that is attached to the edge of thepresentation space and has become unhidden.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

The preferred embodiment of the present invention is presented in aninformation processing system having a presentation space upon which oneor more presentation windows reside. Methods are presented whichmaintain the information conveyance to the user through an applicationbar either in visible mode or in hidden mode. The methods include themovement of the application bar from an edge to which it is docked to amore visible adjacent or opposite edge when the user attempts toposition the window which is edge attached to the application bar offthe screen, preventing further movement of a window when the userattempts to move the portion of the window containing the applicationbar off the screen, or presenting status information in the applicationbar in a minimized form using the minimized pixel representation of anapplication bar in hidden mode. The current art provides this minimizedpixel representation as two pixels, but one skilled in the art couldeasily modify this representation to any subset or representation ofpixels smaller than the entire presentation of the application bar. Thecurrently used terms of ‘auto hide mode’ and ‘hidden mode’ are slightlyconfusing because in the current art this mode does present a minimalpixel indication of the underlying application, making the appbar notcompletely hidden. The use of such a narrow strip of pixels in thecurrent art is to provide a surface to activate with the pointer so thatthe hidden window can easily be made visible and to indicate to the userthat the hidden bar exists, but it conveys no other information with theminimal pixel representation itself. The present invention takesadvantage of using this minimal pixel representation to presentadditional status information.

FIG. 1a is a symbolic representation of a computer in which the presentinvention may be embodied. The computer has associated with it at leasta processor 107, memory 101 and a presentation space memory 109. Thepresentation space is an area of memory which is associated with what isdisplayed on an output device 121 as shown in FIG. 1c.

FIG. 1c provides a pictorial example of a display device 121 whichcontains a presentation space 123 upon which one or more windows may bedisplayed. FIG. 1c also depicts an input device 125 which can be any ofa multitude of input devices well known in the art. The display device121 and input device 125 are both connected to a processor presented inFIG. 1a.

FIG. 1b is exemplary of the content 150 of a presentation space 123residing on a display device 121 as presented in FIG. 1c. Thepresentation space 123 contains several icons 152, each iconrepresenting an application.

FIG. 2 demonstrates an application window being opened 201 which may bedone by double clicking on the icon 152 associated with the applicationor by any other means as will be obvious to one skilled in the art. Inthe present example of the preferred embodiment the user has opened anemulator session on a mobile computer. In a mobile or wireless computingenvironment, it is very important to be aware of the quality of theconnection at all times, therefore when the window is opened for theemulator session, an appbar 203 is attached to an edge of theapplication window to display the status of the connectivity with theserver 210 and signal strength 212 as well as other importantinformation. When the window is presented as in FIG. 2, the users areconstantly reminded of the status of their critical connectioninformation, but this occupies what can become critical presentationspace, especially when there are multiple application windows opened orthe presentation space is rather small as it is on some notebook or handheld computers. When screen space becomes a premium concern, many userschoose to run with their appbars in hidden mode as shown in FIGS. 3a and3 b.

FIG. 3a shows the emulator application of FIG. 2 with the appbar hidden207. In hidden mode, as implemented in the preferred embodiment, theuser is only presented a two-pixel line 207 indicating that there issomething attached to the application that can be opened or expanded.When the user moves the pointer over the narrow visible edge of thehidden appbar, or alternatively clicks on the narrow visible edge, theappbar will expand to its full size. As is obvious to one skilled in theart, any subset or portion of the actual appbar could be used to placethe appbar in hide mode and the current two pixel implementation issmall enough to be unobtrusive yet still be accessible. FIG. 3b is aclose-up view of the left side of the appbar in hide mode.

In the scenario of FIG. 3a, if the user is working on the computer withthe appbar hidden and using the emulator session and the quality of theconnection with the server is degraded, the user is not notified untilthere is a failure in the system. This failure could cause unnecessaryloss of data. An object of the present invention is to ensure that thisinformation is presented to the user prior to the actual failure, whilenot consuming valuable presentation space on a continuous basis. A firstmethod of accomplishing this is to allow the user to create a profile(or to provide a default profile) for the appbar that indicatesthresholds for each of the status indicators in the appbar. If any ofthe status indicators exceeds its predetermined threshold and the appbaris in hide mode, the appbar automatically becomes unhidden to notify theuser of the problem. In this example, if the user were running theemulator session of FIG. 3a and the server response time decreased belowthe threshold set in the profile, the appbar would return to its fullsize as in FIG. 6a with the indicator highlighted 601. FIG. 6b displaysthis same concept with the appbar docked to the edge of the presentationspace rather than the edge of a window.

An alternative method of notifying the user without returning the appbarto it's original size would be to provide some other visual indicationusing the minimal pixel representation of the appbar. One method ofaccomplishing this is shown in FIGS. 5a and 5 b. FIGS. 5a and 5 b show afluctuation in the appearance of the hidden appbar. This could be achange in color or a change in shade or intensity and could presentitself in many embodiments such as flashing, a gradual intensitymodification more like a wave, or by having subsets of the minimal pixelline change color or intensity in sequence as is represented in FIGS. 5aand 5 b, where the darker subset of the pixels 505 move across thebottom of the narrow presentation space 201.

Another problem with the use of appbars in conveying applicationcritical status to the user is that users sometimes move the applicationwindows partially or wholly off the presentation space 123. When theuser moves the appbar off the presentation space, the same problemoccurs as it does for hidden appbars. A first solution to this problemwould be to programmatically prevent the user from moving the appbar offthe presentation space. While this is effective, it can be ratherbothersome to the user. FIG. 4a demonstrates a method of maintaining theconveyance of information to the user as they move the applicationwindow across the presentation space. As the user moves the window 201of FIG. 2 down the presentation space 123, the appbar is automaticallymoved to an edge where it is more visible. FIG. 4a shows the appbar 203now attached to the top of the application window 201. When the movementof the docked appbar is to the opposite edge, the movement of the appbaris rather simple. It is just detached from one edge and attached to theother. When the furthest edge of the application window from thepresentation space is an adjacent edge to that which the appbar ispresently docked, normal programming skill must be used to rotate theappbar 90 degrees.

Another solution to the problem of the user moving appbars edge dockedto windows off the presentation space is addressed in FIG. 4b. In FIG.4b the appbar 203 stops moving when it reaches the edge of thepresentation space and the application window 201 to which it isattached continues to move off the presentation space underneath theappbar until the point where the appbar is the only portion of theapplication window left visible.

What is claimed is:
 1. In an information processing system having apresentation space upon which one or more windows reside, a method ofmaintaining visibility of a status indication or a control of a firstexecuting application wherein said status indication or control isdocked to a first program window executing a second application program,said first program window having four edges, said method comprisinghalting the progress of said status indication or control at the edge ofsaid presentation space and allowing said first program window to bemoved off the presentation space under said status indication orcontrol.
 2. In an information processing system having a presentationspace upon which one or more windows reside, computer readable code formaintaining visibility of a status indication or a control of a firstexecuting application wherein said status indication or control isdocked to a first program window executing a second application program,said first program window having four edges, said method comprisinghalting the progress of said status indication or control at the edge ofsaid presentation space and allowing said first program window to bemoved off the presentation space under said status indication orcontrol.
 3. An information processing system having a presentation spaceupon which one or more windows reside, means of maintaining visibilityof a status indication or a control of a first executing applicationwherein said status indication or control is docked to a first programwindow executing a second application program, said first program windowhaving four edges, said means comprising halting the progress of saidstatus indication or control at the edge of said presentation space andallowing said first program window to be moved off the presentationspace under said status indication or control.
 4. An informationprocessing system having a presentation space upon which one or morewindows reside and an application bar docked to an edge of one of saidwindows, said application bar being in hidden mode where only aminimal-pixel representation of said application bar is displayed withinsaid window, and means for presenting a change in status of anapplication having said application bar in hidden mode wherein saidminimal pixel representation changes color.
 5. An information processingsystem having a presentation space upon which one or more windows resideand an application bar docked to an edge of said presentation space,said application bar being in hidden mode where only a minimal-pixelrepresentation of said application bar is displayed within said window,and means for presenting a change in status of an application havingsaid application bar in hidden mode wherein said minimal pixelrepresentation changes color.
 6. An information processing system havinga presentation space upon which one or more windows reside and anapplication bar docked to an edge of one of said windows or saidpresentation space, said application bar being in hidden mode where onlya minimal pixel representation of said application bar is displayedwithin said window, a means for presenting a change in status of anapplication having said application bar in hidden mode wherein saidminimal pixel representation cyclically changes between two or morecolors.
 7. An information processing system as claimed in claim 6wherein said variation in color has a predetermined meaning for saidapplication.
 8. An information processing system having a presentationspace upon which one or more windows reside and an application bardocked to an edge of one of said windows, said application bar being inhidden mode where only a minimal-pixel representation of saidapplication bar is displayed within said window, and means forpresenting a change in status of an application having said applicationbar in hidden mode wherein said minimal pixel representation varies incolor from one end of said application bar to the other end of saidapplication bar.
 9. In an information processing system having apresentation space upon which one or rare windows reside, a method ofmaintaining visibility of a status indication or a control of a firstexecuting application wherein said status indication or control isdocked to a second application program, said second application programexecuting in a first program window having four edges, said methodcomprising undocking said status indication or control from said secondapplication program and redocking said status indication or control toan edge of said presentation space as a user is moving said firstprogram window out of the presentation space once said status indicationor control encounters an edge of said presentation space.
 10. In aninformation processing system having a presentation space upon which oneor more windows reside, computer readable code for maintainingvisibility of a status indication or a control of a first executingapplication wherein said status indication or control is docked to asecond application program, said second application program executing ina first program window having four edges, said method comprisingundocking said status indication or control from said second applicationprogram and redocking said status indication or control to an edge ofsaid presentation space as a user is moving said first program windowout of the presentation space once said status indication or controlencounters an edge of said presentation space.
 11. An informationprocessing system having a presentation space upon which one or morewindows reside, means for maintaining visibility of a status indicationor a control of a first executing application wherein said statusindication or control is docked to a second application program, saidsecond application program executing in a first program window havingfour edges, said means comprising undocking said status indication orcontrol from said second application program and redocking said statusindication or control to an edge of said presentation space as a user ismoving said first program window out of the presentation space once saidstatus indication or control encounters an edge of said presentationspace.